package com.jilefojing.service;

import java.util.List;

import com.jilefojing.beans.enums.ItemTypeEnumForSource;
import com.jilefojing.beans.enums.forattitude.TypeEnumForAttitude;
import com.jilefojing.beans.exception.UserContextException;
import com.jilefojing.beans.pojos.Attitude;
import com.jilefojing.beans.pojos.enhanced.EnhancedAttitude;
import com.jilefojing.context.beans.vo.UserContext;
import com.jilefojing.service.base.IBaseService;

/**
 * 
 * @author 作者 jgshun
 * @date 创建时间 2016年07月22日 23时23分37秒
 */
public interface IAttitudeService extends IBaseService<Attitude> {

	EnhancedAttitude getEnhancedAttitudesByItemForUser(ItemTypeEnumForSource itemType, long itemId, TypeEnumForAttitude type, UserContext userContext);

	List<EnhancedAttitude> getEnhancedAttitudesByItemsForUser(ItemTypeEnumForSource itemType, List<Long> itemIds, TypeEnumForAttitude type, UserContext userContext);

	List<EnhancedAttitude> conventAttitudes2EnhancedAttitudes(List<Attitude> attitudes);

	Attitude add(Attitude attitude, UserContext userContext) throws UserContextException;

	void cancle(Attitude attitude, UserContext userContext) throws UserContextException;

}
